<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    
    <script>
        // Promise 解决异步编程
        // p = new Promise 
        // p.then(success).catch(reject).finally()

        // Promise
        // Promise.all    请求所有接口 取时间最长的
        // Promise.race   请求接口     取时间最短的

        // Promise对象有以下两个特点
        // 1. 对象的状态不受外界影响   Promise对象代表一个异步操作，有三种状态：pending（进行中）、fulfilled（已成功）和rejected（已失败）
        // 2. 一旦状态改变，就不会再变，任何时候都可以得到这个结果
        // a.  pedding =>  fulfilled  =>  resolve 成功
        // b.  pedding =>  rejected   =>  reject  失败 

        // async  使得异步操作变得更加方便
        // async 可以理解对 Promise  进行了一次二次封装
        // async + await 等待当前的Promise的状态才能执行下一步 
        async function getdata(){
            setTimeout(()=>{

            })
        }

    </script>
</body>
</html>